home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 31
/
Aminet 31 (1999)(Schatztruhe)[!][Jun 1999].iso
/
Aminet
/
dev
/
c
/
vbccwos.lha
/
vbcc
/
doc
/
History
< prev
next >
Wrap
Text File
|
1999-03-07
|
50KB
|
1,104 lines
vbcc is (c) in 1995-99 by Volker Barthelmann
(cgm68k): changes in the code generator for m68k
(cgi386): changes in the code generator for i386
(cgppc): changes in the code generator for ppc
(cgalpha): changes in the code generator for alpha
(cla68k): changes in the C library for amiga68k
(clappc): changes in the C library for amigappc
(vc): changes in the compiler frontend
Changes since V0.6d
- bug fix: typedefs of functions were not handled correctly
- bug fix: fgets read one character too many (cla68k,clappc,clawos)
- removed tail-recursion from killsp()
- bug fix: incorrect use of associativity in certain rare cases
- bug fix: redeclarations of inline-assembly functions left inline
assembly
- bug fix: loop-unrolling had problems with loop-conditions that are
pointer comparisons
- bug fix: conversion of fp -> unsigned char/short generated incorrect
assembly in special cases with FPU (cgm68k)
- bug fix: fmul./fdiv. was generated incorrectly (cgppc)
- bug fix: av_globals was calculated wrong (ouch!)
- bug fix: adding a local optimizer-variable to a function which had
no variables in nesting 1 before
Changes since V0.6c
- support for auto-opening of libraries
- bug fix: SUBIFP in strength-reduction
- gets/fgets must not always return 0 when EOF
- triton-code by Frank Wille included
- bug fix: problems with folding pointer constants
- bug fix: loop-unrolling with non-constant number of iterations
- added HUGE_VAL (cla68k,clappc)
- replaced fprintf(stderr by printf( (cla68k,clappc)
- fixed an internal error with -no-multiple-ccs (cgppc)
- included scheduler for ppc by Frank Wille (vscppc)
- added support for scheduler to vc
- bug fix: -1/a != -a (ouch!)
- bug fix: folding of KONST|DREFOBJ was broken with optimization
- some work on memory-cse
Changes since V0.6b
- added support for unsigned int size_t
- added small data support for PPC (cgppc)
- started code generator for c16x
- added __near, __far, __chip and __saveds for 68k+PPC (cgm68k/cgppc)
- added support for target-specific variable attributes
- started small data support for PPC (cgppc)
- improved caching of memory contents
- Julian Kinraid adapted vconfig to new vc (vca68k)
- warning 164 is not displayed if a function is called
- bug fix: update is not allowed with rA==rD (cgppc)
- changed external reference in tan.s (m040.lib) to non-pc-relative (cla68k)
Changes since V0.6a
- bug fix: fp-expressions with constants were sometimes rearranged
even without -fp-associative
- bug fix: nested function-calls with stack-arguments and ORDERED_PUSH
- several small changes to libvc.a/libm.a by Frank Wille (cla68k/clappc)
- better use of loads with offsets (cgppc)
- better tmpnam provided by A. M. Jorge (cla68k/clappc)
- fwrite buffered now (clppc)
- bug fix: there was a problem with GETRETURN
- bug fix: bugs with argument passing in registers fixed
- bug fix: a bug with TEST and UNSIGNED was introduced
- bug fix: __reg without explicit type-/storage-class-specifier
- bug fix: const float/double sometimes causes "#fp-constant"-problem (cgm68k)
- added -double-push
- negative values in reg_parm used for passign arguments in regs and stack
- added -cf to vc
- bug fix: format string for error 101 was broken
- bug fix: conversions unsigned long->pointer in data-reg were broken (cgm68k)
- bug fix: TEST without following branch could cause internal error (cgm68k)
- new alib by Stephen Williams added
- extra argument to reg_parm added, alpha/ppc cgs modified (cgalpha/cgppc)
- bug fix: __reg was ignored in function-definitions with HAVE_REGPARMS
- bug fix: switch_statement has to clear nocode
Changes since V0.6
- bug fix: functions returning structs
- bug fix: str(n)icmp in extra.lib (cla68k/clappc)
- added some simple elimination of redundant compare/bccs
- added loop-unrolling for certain loop-invariant number of iterations
- fixed names of some dos-varargs-functions in vargs.h (cla68k/clappc)
- -use-lmw added (cgppc)
- some work on -peephole (cgppc)
- bug fix: signed right-shifts (cgppc)
- newmalloc made standard (cla68k)
- fixed some bugs in addressing (cgm68k)
- BeginIO added to libamiga.a
- fixed certain type-conversions (cgppc)
- some bug fixes (cgalpha)
- added NOEXE to config-files using PhxAss
- bug fix: replaced buggy strncpy (cla68k/clappc)
- support for stack-frames larger than 32KB added (cgppc)
- some changes in the code-generator for ppc (cgppc)
- new pasm can replace branches >16bit (config-files changed)
Changes since V0.5k
- -ml option added to vc
- remove() and rename() added (clappc)
- vc accepts +file anywhere now
Changes since V0.5j
- -setccs added (cgppc)
- bug fix: some bugs for ppc fixed (cgppc)
- bug fix: problems with SUBPFP in ic.c
- bug fix: do_refs() had problems with pointer-constants (cgm68k)
- bug fix: similar problem for i386 (cgi386)
- obsolete EOF-check in main() removed
- format for -cc/-ccv changed (vc)
- + does not need the full path anymore (vc)
Changes since V0.5i
- fixed minor bugs in strcmp, strncmp and memcmp (cla68k,clappc)
- fixed certain problems with regargs
- some bug-fixes (cgppc,cgalpha)
- bug-fix: KONST|DREFOBJ was incorrectly propagated as constant
- hacked fd2lib to create libcall-includes (cla68k)
Changes since V0.5h
- -ul added to vc
- -no-regnames added (cgppc)
- changed gen_cond() void
- support for struct-return and HAVE_REGPARMS
- several bug-fixes (cgppc,cgalpha)
- removed debugging-output in printzul
- warning 208 extended to simple endless loops
- cyclic dependencies in load_reg_parms are handled now
- several bug fixes (cgppc)
Changes since V0.5g
- argument-registers were assigned before rewriting array/function-types
- r2 is reserved (cgppc)
- warning 168 is no more displayed for main()
- bug-fix: alignment of floating-point-constants not always ok (cgppc,cgi386)
- bug-fix: sub const with short types (cgppc)
- function-inlining works with register-parameters
- added stdarg-support (cgppc)
- leaf-functions don't creat a stack-frame (cgppc)
- some bug fixes (cgppc)
- several changes in handling of alignments
- added support for modulo (cgppc)
- some modifications on alignments (cgm68k,cgppc)
- -amiga-align added (cgppc)
- mysupp included in extra.lib (cla68k)
- some docs updated
- added memread_id, memwrite_id and memwrite_completely to vsc.h
- added inline-assembly-functions
Changes since V0.5f
- added examples of stdarg.h into the codegen-docs
- -save-fp added (cgi386)
- bug fix: conversions int<->char and %esi etc. (cgi386)
- warning 170 turned off by default
- bug fix: corrected prototype for strerror() (cla68k)
- no-builtins added (cgalpha)
- added some builtin faunctions (cgalpha)
- ?: now works with non-scalars
- dtgen is easier to use when not building a cross-compiler
- __typeof added
- conversions of DREFOBJ sometimes generated illegal assembly on
alpha (cgalpha)
Changes since V0.5e
- cg_copyright added
- increased default-values for unroll-size and inline-size
- some changes for PPC (cgppc)
- bug fix: declarations with empty identifiers were accepted
- bug fix: read_config() read one byte too much in vc (vc)
- bug fix: warning 226 added
- some optimizations for Alpha (cgalpha)
- more conservative handling of copy-propagation and structs/unions
- better handling of alignment of compund types
- bug fix: local_regs() generated duplicate FREEREGs if a register
was exchanged in free_hreg()
- bug fix: moveq was used incorrectly sometimes (cgm68k)
- bug fix: problems with must_convert() for m68k (cgm68k)
- bug fix: sometimes scratch registers were reused too early with
a op= b
Changes since V0.5d
- added warnings 224 and 225
- bug fix: parsing of format-strings works better now
- inlined calls don't increase <function_calls>
- some work on the code-generator for alpha
- bug fix: function-inlining didn't work with register parameters
- clearing am before gen_dc
Changes since V0.5c
- new Makefile
- better support for crosscompilers and emulation of data types
- bug fix: several bugs fixed
- a68k/amiga68k became m68k
Changes since V0.5b
- bug fix: corrupt alias info in frequency-reduction
- bug fix: loop1 in flow.c
-